/**
 * 一元条件的复杂情况
 *  */
// const actions = new Map([
//   [1, ['processing', 'IndexPage']],
//   [2, ['fail', 'FailPage']],
//   [3, ['fail', 'FailPage']],
//   [4, ['success', 'SuccessPage']],
//   [5, ['cancel', 'CancelPage']],
//   ['default', ['other', 'Index']]
// ])

// /**
//  * 按钮点击事件

//  * @param {number} status 活动状态：1 开团进行中 2 开团失败 3 商品售罄 4 开团成功 5 系统取消

//  */
// const onButtonClick = (status) => {
//   let action = actions.get(status) || actions.get('default')
//   sendLog(action[0])
//   jumpTo(action[1])
// }

/**
 * 這個是應對多中判斷條件的处理，map的key可以是任意的数据结构类型
 *  */ 
const actions = () => {

  const functionA = () => { /*do sth*/ }

  const functionB = () => { /*do sth*/ }

  const functionC = () => { /*send log*/ }

  return new Map([

    [/^guest_[1-4]$/, functionA],

    [/^guest_5$/, functionB],

    [/^guest_.*$/, functionC],
  ])
}
const onButtonClick = (identity, status) => {

  let action = [...actions()].filter(([key, value]) => (key.test(`${identity}_${status}`)))
  action.forEach(([key, value]) => value.call(this))

}